package com.yifeng.repo.micro.service.server.engine.generate;

import lombok.Data;

import java.util.List;

/**
 * Created by daibing on 2023/6/19.
 */
@Data
public class MybatisPlusGeneratorConf {
    /**
     * 数据库url地址，比如：jdbc:mysql://139.196.88.110:3307/msg_center
     */
    private String url;
    /**
     * 数据库用户名，比如：msg_center
     */
    private String username;
    /**
     * 数据库密码，比如：msg_center1234
     */
    private String password;
    /**
     * 生成代码作者，注意修改为自己的名字，比如：daibing
     */
    private String author;
    /**
     * 代码生成绝对路径，比如：D:\Gitlab\base\yfcloud-mcs\yfcloud-mcs-server
     */
    private String projectAbsoluteDir;
    /**
     * 模块包路径，包括模块名，比如：com.yifeng.base.mcs.server.msg
     */
    private String parent;
    /**
     * 模块内部子模块名称，比如：internal
     */
    private String moduleName;
    /**
     * 生成类将排除表前缀，比如：mcs_
     */
    private List<String> tablePrefixList;
    /**
     * 数据库表名称，比如：mcs_app_key
     */
    private List<String> includes;
    /**
     * 逻辑删除字段名称
     */
    private String logicDeleteColumnName = "is_deleted";
    /**
     * 是否启用移除is前缀：启用移除的时候将生成 boolean 类型，否则将生成 Boolean 类型
     */
    private boolean enableRemoveIsPrefix = true;
    /**
     * 不生成service接口
     */
    private boolean disableServiceInterface = true;

    /**
     * Controller的RequestMapping是子模块名称开头
     */
    private boolean mappingStartByModuleName = true;

    /**
     * 是否启用 @DS 注解
     */
    private boolean enableDynamicSource = false;

    /**
     * 是否启用生成 puml 文件
     */
    private boolean enableGenerateUml = false;
}
